Instant Messaging (sometimes referred to as IM) enables users to easily see whether a chosen buddy (such as, e.g., a friend, colleague, co-worker or the like) is connected to the Internet and, if so, to exchange messages with them. Instant Messaging typically differs from common e-mail in the immediacy of the message exchange. Typically, IM exchanges are text-only. However, some services (e.g., AOL Instant Messaging) enable voice messaging and file sharing. In IM, both users need to subscribe to the service (e.g., and have certain software on their user devices), and need to be online at the same time. In addition, the intended recipient needs to be willing to accept instant messages. If one tries to send an IM to someone who is not online, or who is not willing to accept an Instant Message, a notification is typically provided that the transmission cannot be completed. If the recipient's online software is set to accept Instant Messages, it typically alerts the recipient with a distinctive sound and displays a Pop-Up window that indicates that an IM has arrived, and that enables the recipient to accept or reject it, or displays a Pop-up window containing the incoming message. In general, IM can be truly or virtually instantaneous (with, e.g., delays of usually less than a number of seconds), such that it is typically possible for two people to have a real-time online “conversation” by sending IMs to each other.
IM users typically use a networked computer and IM client software to exchange messages with one another in conversational style. An IM client provides an interface for users to compose, send, receive, and read text messages. Examples of IM clients that are popular today include IBM's SameTime, MSN Messenger, Yahoo!, and AOL Instant Messenger.
In a graphical display, an IM client usually provides several windows, through which a user can compose and read messages. IM clients generally provide some facility for managing lists of contacts, particularly other IM users. These lists are referred to colloquially as “buddy lists.” It is common practice to organize such lists into groups of related users, wherein the IM client displays the various groups in a hierarchical tree that can be collapsed and expanded as the user desires.